package com.ruoyi.report_tg.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 土的颗粒分析记录业务对象 report_tg_tdklfxjlb_bs_info
 *
 * @author zyb
 * @date 2024-05-24
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class TdklfxjlbBsInfoBo extends ExcelGeneralBo {

    /**
     * 一份excel表格的唯一id(其他的excel主表，都应有此字段）
     */
    @NotNull(message = "一份excel表格的唯一id(其他的excel主表，都应有此字段）不能为空", groups = { EditGroup.class })
    private Long excelId;

    /**
     * 共几页
     */
//    @NotNull(message = "共几页不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long totalPage;

    /**
     * 第几页
     */
//    @NotNull(message = "第几页不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long page;

    /**
     * 记录编号
     */
//    @NotBlank(message = "记录编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jilbh;

    /**
     * 检测单位名称
     */
//    @NotBlank(message = "检测单位名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancdwmc;

    /**
     * 工程部位/用途
     */
//    @NotBlank(message = "工程部位/用途不能为空", groups = { AddGroup.class, EditGroup.class })
    private String gongcbwyt;

    /**
     * 样品名称
     */
//    @NotBlank(message = "样品名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpmc;

    /**
     * 样品编号
     */
//    @NotBlank(message = "样品编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpbh;

    /**
     * 样品数量
     */
//    @NotBlank(message = "样品数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpsl;

    /**
     * 样品状态
     */
//    @NotBlank(message = "样品状态不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpzt;

    /**
     * 样品时间
     */
//    @NotNull(message = "样品时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpsj;

    /**
     * 试验检测日期
     */
//    @NotBlank(message = "试验检测日期不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiyjcrq;

    /**
     * 试验条件温度
     */
//    @NotBlank(message = "试验条件温度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiytjwd;

    /**
     * 试验条件湿度
     */
//    @NotBlank(message = "试验条件湿度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiytjsd;

    /**
     * 检测依据
     */
//    @NotBlank(message = "检测依据不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancyj;

    /**
     * 判定依据
     */
//    @NotBlank(message = "判定依据不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pandyj;

    /**
     * 主要仪器设备名称及编号
     */
//    @NotBlank(message = "主要仪器设备名称及编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String zhuyyqsbmcjbh;

    /**
     * 附加声明
     */
//    @NotBlank(message = "附加声明不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fujsm;

    /**
     * 筛前总土质量
     */
//    @NotNull(message = "筛前总土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal shaiqztzl;

    /**
     * 小于2mm土质量
     */
//    @NotNull(message = "小于2mm土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal xiaoy2mmtzl;

    /**
     * 小于2mm土占总土质量
     */
//    @NotNull(message = "小于2mm土占总土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal xiaoy2mmtzztzl;

    /**
     * 小于2mm取试样质量
     */
//    @NotNull(message = "小于2mm取试样质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal xiaoy2mmqsyzl;

    /**
     * mm60累积留筛土质量
     */
//    @NotNull(message = "mm60累积留筛土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm60ljlstzl;

    /**
     * mm60小于该孔径土质量
     */
//    @NotNull(message = "mm60小于该孔径土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm60xygkjtzl;

    /**
     * mm60小于该孔径土质量百分比
     */
//    @NotNull(message = "mm60小于该孔径土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm60xygkjtzlbfb;

    /**
     * mm40累积留筛土质量
     */
//    @NotNull(message = "mm40累积留筛土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm40ljlstzl;

    /**
     * mm40小于该孔径土质量
     */
//    @NotNull(message = "mm40小于该孔径土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm40xygkjtzl;

    /**
     * mm40小于该孔径土质量百分比
     */
//    @NotNull(message = "mm40小于该孔径土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm40xygkjtzlbfb;

    /**
     * mm20累积留筛土质量
     */
//    @NotNull(message = "mm20累积留筛土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm20ljlstzl;

    /**
     * mm20小于该孔径土质量
     */
//    @NotNull(message = "mm20小于该孔径土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm20xygkjtzl;

    /**
     * mm20小于该孔径土质量百分比
     */
//    @NotNull(message = "mm20小于该孔径土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm20xygkjtzlbfb;

    /**
     * mm10累积留筛土质量
     */
//    @NotNull(message = "mm10累积留筛土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm10ljlstzl;

    /**
     * mm10小于该孔径土质量
     */
//    @NotNull(message = "mm10小于该孔径土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm10xygkjtzl;

    /**
     * mm10小于该孔径土质量百分比
     */
//    @NotNull(message = "mm10小于该孔径土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm10xygkjtzlbfb;

    /**
     * mm5累积留筛土质量
     */
//    @NotNull(message = "mm5累积留筛土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm5ljlstzl;

    /**
     * mm5小于该孔径土质量
     */
//    @NotNull(message = "mm5小于该孔径土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm5xygkjtzl;

    /**
     * mm5小于该孔径土质量百分比
     */
//    @NotNull(message = "mm5小于该孔径土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm5xygkjtzlbfb;

    /**
     * mm2累积留筛土质量
     */
//    @NotNull(message = "mm2累积留筛土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm2ljlstzl;

    /**
     * mm2小于该孔径土质量
     */
//    @NotNull(message = "mm2小于该孔径土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm2xygkjtzl;

    /**
     * mm2小于该孔径土质量百分比
     */
//    @NotNull(message = "mm2小于该孔径土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm2xygkjtzlbfb;

    /**
     * mm2占总土质量百分比
     */
//    @NotNull(message = "mm2占总土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm2zztzlbfb;

    /**
     * mm1累积留筛土质量
     */
//    @NotNull(message = "mm1累积留筛土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm1ljlstzl;

    /**
     * mm1小于该孔径土质量
     */
//    @NotNull(message = "mm1小于该孔径土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm1xygkjtzl;

    /**
     * mm1小于该孔径土质量百分比
     */
//    @NotNull(message = "mm1小于该孔径土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm1xygkjtzlbfb;

    /**
     * mm1占总土质量百分比
     */
//    @NotNull(message = "mm1占总土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm1zztzlbfb;

    /**
     * mm0p5累积留筛土质量
     */
//    @NotNull(message = "mm0p5累积留筛土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm0p5ljlstzl;

    /**
     * mm0p5小于该孔径土质量
     */
//    @NotNull(message = "mm0p5小于该孔径土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm0p5xygkjtzl;

    /**
     * mm0p5小于该孔径土质量百分比
     */
//    @NotNull(message = "mm0p5小于该孔径土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm0p5xygkjtzlbfb;

    /**
     * mm0p5占总土质量百分比
     */
//    @NotNull(message = "mm0p5占总土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm0p5zztzlbfb;

    /**
     * mm0p25累积留筛土质量
     */
//    @NotNull(message = "mm0p25累积留筛土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm0p25ljlstzl;

    /**
     * mm0p25小于该孔径土质量
     */
//    @NotNull(message = "mm0p25小于该孔径土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm0p25xygkjtzl;

    /**
     * mm0p25小于该孔径土质量百分比
     */
//    @NotNull(message = "mm0p25小于该孔径土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm0p25xygkjtzlbfb;

    /**
     * mm0p25占总土质量百分比
     */
//    @NotNull(message = "mm0p25占总土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm0p25zztzlbfb;

    /**
     * mm0p075累积留筛土质量
     */
//    @NotNull(message = "mm0p075累积留筛土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm0p075ljlstzl;

    /**
     * mm0p075小于该孔径土质量
     */
//    @NotNull(message = "mm0p075小于该孔径土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm0p075xygkjtzl;

    /**
     * mm0p075小于该孔径土质量百分比
     */
//    @NotNull(message = "mm0p075小于该孔径土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm0p075xygkjtzlbfb;

    /**
     * mm0p075占总土质量百分比
     */
//    @NotNull(message = "mm0p075占总土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal mm0p075zztzlbfb;

    /**
     * di累积留筛土质量
     */
//    @NotNull(message = "di累积留筛土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal diljlstzl;

    /**
     * di小于该孔径土质量
     */
//    @NotNull(message = "di小于该孔径土质量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal dixygkjtzl;

    /**
     * di小于该孔径土质量百分比
     */
//    @NotNull(message = "di小于该孔径土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal dixygkjtzlbfb;

    /**
     * di占总土质量百分比
     */
//    @NotNull(message = "di占总土质量百分比不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal dizztzlbfb;

    /**
     * d60
     */
//    @NotNull(message = "d60不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal d60;

    /**
     * d30
     */
//    @NotNull(message = "d30不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal d30;

    /**
     * d10
     */
//    @NotNull(message = "d10不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal d10;

    /**
     * 不均匀系数
     */
//    @NotNull(message = "不均匀系数不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal bujyxs;

    /**
     * 曲率系数
     */
//    @NotNull(message = "曲率系数不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal qulxs;

    /**
     * 大于60mm含量
     */
//    @NotNull(message = "大于60mm含量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal ge60hl;

    /**
     * 2-60mm含量
     */
//    @NotNull(message = "2-60mm含量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal ge2le60hl;

    /**
     * 0.75-2mm含量
     */
//    @NotNull(message = "0.75-2mm含量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal ge0p75le2hl;

    /**
     * 小于0.75含量
     */
//    @NotNull(message = "小于0.75含量不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal le0p75hl;

    /**
     * 土的鉴别分类和代号
     */
//    @NotBlank(message = "土的鉴别分类和代号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String tudjbflhdh;

    /**
     * mm2p0累积留筛土质量
     */
    private BigDecimal mm2p0ljlstzl;
    /**
     * mm2p0小于该孔径土质量
     */
    private BigDecimal mm2p0xygkjtzl;
    /**
     * mm2p0小于该孔径土质量百分比
     */
    private BigDecimal mm2p0xygkjtzlbfb;
    /**
     * mm2p0占总土质量百分比
     */
    private BigDecimal mm2p0zztzlbfb;

    /**
     * 设备ids
     */
    private String shebIds;

}
